home *** CD-ROM | disk | FTP | other *** search
- #include "lib.h"
- #define OK 0
- extern char *brksize;
-
- PUBLIC _VOIDSTAR brk(addr)
- _VOIDSTAR addr;
- {
- int k;
-
- k = callm1(MM, BRK, 0, 0, 0, addr, NIL_PTR, NIL_PTR);
- if (k == OK) {
- brksize = M.m2_p1;
- return(NIL_PTR);
- } else {
- return( (_VOIDSTAR) -1 );
- }
- }
-
-
- PUBLIC _VOIDSTAR sbrk(incr)
- int incr;
- {
- char *newsize, *oldsize;
- /* extern int endv, dorgv; */
-
- oldsize = brksize;
- newsize = brksize + incr;
- if ((incr > 0 && newsize < oldsize) || (incr < 0 && newsize > oldsize))
- return( (_VOIDSTAR) -1);
- if (brk(newsize) == 0)
- return(oldsize);
- else
- return( (_VOIDSTAR) -1 );
- }
-
-